//
//  CZBaseTableViewController.swift
//  swiftweibo1.0
//
//  Created by 许建安 on 15/11/23.
//  Copyright © 2015年 itcast. All rights reserved.
//

import UIKit

class CZBaseTableViewController: UITableViewController {
    
    //创建用户登录属性的标识
    var userlogin = false

    override func viewDidLoad() {
        super.viewDidLoad()
        // 如果用户已经登录，正常加载TableView,否则创建访客视图
        userlogin ? super.loadView() : setupVistorVidew()

        
    }
    //创建访客视图
    private func setupVistorVidew() {
        //设置view
        view  = vistorView
//        view.backgroundColor = UIColor.whiteColor()
        //获得正在继承使用这个类的子类名，用代理方法
        
//        print("当前控制器:\(self)")
        //判断类型
        if self is CZHomeViewController {
            //让转轮转起来
            vistorView.rotationAnimation()
            
            //监听应用进入和退出后退
            NSNotificationCenter.defaultCenter().addObserver(self, selector: "didEnterBackgroud", name: UIApplicationDidEnterBackgroundNotification, object: nil)
             NSNotificationCenter.defaultCenter().addObserver(self, selector: "didBecomeActive", name: UIApplicationDidBecomeActiveNotification, object: nil)
            
            
        } else if self is CZMessageViewController {
            //设置发现访客视图的内容
            vistorView.setupVistorView("visitordiscover_image_message", message: "登录后，别人评论你的微博，发给你的消息，都会在这里收到通知")
        } else if self is CZDiscoverViewController {
            //设置发现访客视图的内容
            vistorView.setupVistorView("visitordiscover_image_message", message: "登录后，最新、最热微博尽在掌握，不再会与实事潮流擦肩而过")
        } else if self is CZProfileViewController {
            //设置发现访客视图的内容
            vistorView.setupVistorView("visitordiscover_image_profile", message: "登录后，你的微博、相册、个人资料会显示在这里，展示给别人")
        }
        
        //设置导航栏按钮
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewRegisterClick")
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登录", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewLoginClick")
        
    }
    
    //移除通知
    deinit {
        if self is CZHomeViewController {
            NSNotificationCenter.defaultCenter().removeObserver(self)
        }
    }
    
    //进入后台调用
    func didEnterBackgroud() {
        //暂停核心动画
        print("1")
        vistorView.pauseAnimation()
    }
    
    /// 进入应用程序
    func didBecomeActive() {
        // 开始核心动画
         print("2")
        vistorView.resumeAnimation()
    }
    
    /// MARK: - 懒加载
    //访客视图
    private lazy var vistorView : CZVistorView = CZVistorView()
}
extension CZBaseTableViewController: CZVistorViewDelegate {
    
    //MARK: - 实现代理方法
    func vistorViewLoginClick() {
//        print("登录按钮被点击了")
        //点击登录按钮进入授权页面
        let oauthVC = CZOauthViewController()
        presentViewController(UINavigationController(rootViewController: oauthVC), animated: true, completion: nil)
        
    }
    
    func vistorViewRegisterClick() {
        print("注册按钮被点击")
    }
}



    






















